package com.sumainfor.pc.epc.dao;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;

/**
 * @Author PuaChen
 * @Create 2018-11-26 17:47
 * 房源配置变更
 */
public interface HousingConfigChangeMapper {

    /**
     * 查询获得房源变更列表的信息
     *
     * @param page
     * @param state 筛选状态
     * @return
     */
    IPage<Map<String, Object>> selectConfigList(Page page, @Param("state") Integer state);

    /**
     * 根据配置变更主编号 查询所有的配置变更详表列表
     *
     * @param confId
     * @return
     */
    List<Map<String, Object>> selectConfigInfoListByConfId(String confId);

    /**
     * 获得 房源配置分组后去重的数量有多少个
     *
     * @param confId
     * @return
     */
    List<String> getConfigInfoHouNameCountById(String confId);

    /**
     * 获得商品品牌  下拉框数据
     *
     * @param shopName
     * @param speName
     * @param comType
     * @return
     */
    List<Map<String, Object>> getSpinnerForBrandList(@Param("shopName") String shopName, @Param("speName") String speName, @Param("comType") String comType);

    /**
     * 根据主商品的ID 和规格的名称 查询所有的型号信息
     *
     * @param shopId
     * @param speName
     * @return
     */
    List<Map<String, Object>> getSpinnerForMoList(@Param("shopId") String shopId, @Param("speName") String speName);

    /**
     * 根据房源配置变更详表的ID 去查询这个记录
     * @param id
     * @return
     */
    Map<String, Object> getConfigInfoById(Integer id);

    /**
     * 更新
     * @param params
     * @return
     */
    int updateConfigInfoById(Map<String,Object> params);
}
